Skip to content

feat(seo): smarter meta-description fallbacks; trim over-long defaults (2.12.1, #1142/#1324)#1333

Merged
jonfroehlich merged 1 commit into
masterfrom
1324-meta-description-fallbacks
Jun 18, 2026
Merged

feat(seo): smarter meta-description fallbacks; trim over-long defaults (2.12.1, #1142/#1324)#1333
jonfroehlich merged 1 commit into
masterfrom
1324-meta-description-fallbacks

Conversation

@jonfroehlich

Copy link
Copy Markdown
Member

Follow-up to the 2.12.0 SEO work, addressing the one actionable warning from
opengraph.xyz (over-long / generic descriptions on fallback pages). Verified live:
/projects/ (144), /people/ (145), /member/jonfroehlich/ (160) were already
fine; only the 187-char generic fallback (home + summary-less projects like
/project/sidewalk/) was flagged.

Changes

  • Home now uses a concise (~135 char) description mirroring the hero "About Us"
    blurb next to the animated logo (instead of the shared generic boilerplate). Reused
    for the Organization JSON-LD description.
  • Projects without a summary fall back to the project's about text
    (stripped + truncated to 160) — so each summary-less project gets a distinct
    description rather than identical boilerplate (directly reduces the duplicate-content
    signal behind Google not indexing the Makeability Lab website #1142).
  • Trimmed the last-resort generic default to ~135 chars.

Intentionally NOT changed

opengraph.xyz's "missing headline in image" / "missing CTA in image" warnings are
engagement-marketing heuristics (text/CTA baked into the share-image pixels). That's
inappropriate for an academic research lab and isn't a correctness or SEO issue; the
og:image itself is valid (1200×630, alt text, https).

Testing

  • DescriptionFallbackTests: home uses the distinct hero description (≤160, not the
    generic); summary-less project uses About; summary+about-less project uses the
    trimmed default (≤160).
  • Full suite: 270 pass, 1 skipped.
  • Version → 2.12.1. Template/view-only — no schema change, no migration / deploy blip.

🤖 Generated with Claude Code

#1142, #1324)

OG/social inspectors flagged the generic 187-char description on pages that fell
back to the lab boilerplate (home + projects without a one-line summary). Give
those pages distinct, length-bounded descriptions:

- Home: a concise (~135 char) description mirroring the hero "About Us" blurb next
  to the animated logo, instead of the shared generic one. Reused for the
  Organization JSON-LD description too.
- Projects without a `summary`: fall back to the project's `about` text (stripped +
  truncated to 160) rather than the generic boilerplate — gives each summary-less
  project a distinct description (directly helps #1142's duplicate-content signal).
- Trim the last-resort generic default to ~135 chars.

Per-page descriptions for listing/member pages were already fine (144-160). The
image-headline / call-to-action warnings from opengraph.xyz are marketing heuristics
(text baked into the share image) and intentionally not addressed — inappropriate
for an academic lab and not a correctness/SEO issue.

Bumps version to 2.12.1. Template/view-only — no schema change, so no migration.
Adds DescriptionFallbackTests; full suite 270 green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jonfroehlich jonfroehlich merged commit f37bca6 into master Jun 18, 2026
2 checks passed
@jonfroehlich jonfroehlich deleted the 1324-meta-description-fallbacks branch June 22, 2026 20:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant